 | | RANGO NUMÉRICO |
“El universo de entidades es el rango de los valores de las variables. Ser es ser el valor de una variable” (Quine)
Rango Numérico Simple
Semántica
Un rango numérico simple es una expresión abierta de números consecutivos (de incremento unidad). Se define a partir de los números inicial (r1
) y final (r2
) del rango.
- Si
r1<r2
, entonces la secuencia de números es creciente.
- Si
r1>r2
, entonces la secuencia de números es decreciente.
- Si
r1=r2
, entonces el rango es un solo elemento: r1
.
Sintaxis
Justificación
El rango representa una forma abreviada de descripción de números consecutivos.
Definición
〈( r1…r2 =: (r1 ← r1=r2 →'
(r1 (r1+1)…r2) ← r1<r2 →'
( r1 ← r1=r2 →' (r1 (r1-1)…r2))
)〉
Observaciones
- El rango es una expresión derivada descriptiva abierta.
- "
…
" es un solo símbolo y no tres puntos consecutivos.
- Los números que definen el rango pueden no ser números enteros.
- Se pueden utilizar nombres de variables.
- El que el resultado sea una expresión abierta es para facilitar su utilización dentro de otras expresiones. Podría definirse, si se desea, como una secuencia o conjunto (expresión cerrada).
Ejemplos
3…6 // rep. 3 4 5 6
( 3…6 ) // rep. (3 4 5 6) eq. 3456
{3…6} // rep. {3 4 5 6}
(−1 … 4) // rep. −1 0 1 2 3 4
(6 … 3) // rep. 6 5 4 3
(31 … 31) // rep. 31
(a … a+3) // rep. a a+1 a+2 a+3
(a … a−3) // rep. a a−1 a−2 a−3
(0.5 … 3.5) // rep. 0.5 1.5 2.5 3.5
(a … b) // se autoevalúa
Rango Numérico con Incremento
Semántica
El incremento se define indirectamente especificando un segundo elemento de la secuencia. El incremento es la diferencia entre el segundo y el primero. El último elemento del rango no puede superar el límite superior especificado, si el incremento es positivo. Si es negativo, no puede ser menor que el límite inferior especificado. El resultado es también una expresión abierta.
Sintaxis
Definición
〈( (r1 r2 … r3) =: ( (s = r2−r1)
( (r1 ¡(r1+s … r3)↓) ← r1<r2 →'
(¡r1 ← r1=r2 →' ¡(r1 (r1−s … r2)↓) )
)↓!
)〉
Ejemplos
(1 4 … 12) // rep. 1 4 7 10
( 10 7 … 1 ) // rep. (10 7 4 1)
(1 1.02 … 1.1) // rep. 1 1.02 1.04 1.06 1.08 1.1
(10 8 … 1) // rep. 10 8 6 4 2
( a a+2 … a+8 ) // rep. (a a+2 a+4 a+6 a+8)
( a a−2 … a−8 ) // rep. (a a−2 a−4 a−6 a−8)
(a b … 4*b−a) // rep. a b 2*b−a 3*b−a, 4*b−a
Rangos de orden superior
Uno o los dos extremos definidores de un rango pueden ser, a su vez, rangos. Se tiene así un rango de orden dos. Ejemplos:
123…( 1…6 ) // rep. 123…123456
( 1…5 )…1234567 // rep. 12345…1234567
( 1…5 )…( 1…7 ) // rep. 12345…12345677
( 1 ( 1…4 ) … ) // rep. (1 1234 2447 …)
(1…5 10…15) // rep. (1 2 3 4 5 10 11 12 13 14 15)
Otros Tipos de Rangos Numéricos
Rango infinito
Cuando el extremo superior del rango no se especifica, por definición, es un rango numérico infinito.
Rango infinito simple (incremento 1):
Rango infinito con definición de incremento:
〈( (r1 r2 …) =: (r1 (r2 (2*r2−r1)…)↓) )〉
Ejemplos:
3… // rep. 3 4 5 ...
(−3)… // rep. −3 −2 −1 0 1 2 3 ...
( 1 3 … ) // rep. (1 3 5 7 9 ...) // secuencia de los nros. impares
(3 1 …) // rep. 3 1 −1 −3 −5 ...
Rango operativo
Es una expresión de la forma
r1⊥…⊥r2 // rango simple
r1⊥r2⊥…⊥r3 // rango con definición de incremento
en donde ⊥
es un operador. Un rango operativo equivale, por definición, a insertar el operador entre todos los componentes del rango:
〈( r1⊥…⊥r2 =: ⊥⊣( r1…r2 ) )〉
〈( r1⊥r2…⊥r3 =: ⊥⊣( (r1 r2 … r3) ) )〉
Dependiendo del tipo de operador tenemos rangos sumatorios, multiplicadores, etc.
Un rango “normal” es un caso particular de rango operativo cuando (⊥ = θ)
.
También puede haber rangos operativos infinitos, de las formas:
〈( r⊥… =: ⊣( r… ) )〉
〈( r1⊥r2⊥… =: ⊥⊣( (r1 r2 …) ) )〉
〈( …⊥r =: ( …r )⊢⊥)〉
〈( …⊥r2⊥r1 =: ( (… r2 r1) )⊢⊥)〉
Ejemplos:
- Rango sumatorio:
11+…+15 // rep. 11+12+13+14+15
1+… // rep. (1+2+3+...)
- Rango multiplicador:
1*…*5 // rep. 1*2*3*4*5
El factorial de un número natural n
es un caso particular de rango multiplicador: (1*…*n)
. El factorial generalizado permite utilizar valores reales en el valor inicial, en el incremento y en el valor final. Por ejemplo,
1.1*1.2 *…*1.5 // rep. 1.1*1.2*1.3*1.4*1.5
Rango exponencial:
2^…^5 // rep. 2^3^4^5 eq. ((2^3)^4)^5
(2^…^5)(Δ2) // rep. 2^(3^(4^5))
(Δ2 indica asociatividad diádica por la derecha)
Rango de uniones:
13∪…∪16 // rep. 13∪14∪15∪16 ev. 13141516
13∪16∪…∪22 // rep. 13∪16∪19∪22 ev. 13161922
16∪…∪13 // rep. 16∪15∪14∪13 ev. 16151413
13∪… // rep. 13∪14∪15∪... ev. 131415...
Rango continuo
El rango continuo sobre la recta real es el conjunto de números comprendidos entre dos números determinados. Se define de la manera siguiente:
〈( r1_r2 =: {〈(r ← (r≥r1 ∧ r≤r2)〉} ← r1≤r2 →'
{〈(r ← (r≥r2 ∧ r≤r1)〉} )〉
Definición de rango continuo infinito a la derecha:
〈( r1_ =: {〈( r ← r≥r1 )〉} )〉
Definición de rango continuo infinito a la izquierda:
〈( _r1 =: {〈( r ← r≤r1 )〉} )〉
Ejemplos:
3_5 // los números reales entre 3 y 5
5_3 // los números reales entre 3 y 5
3_ // los números reales mayores o iguales que 3
_3 // los números reales menores o iguales que 3
Propiedades de los Rangos
〈( r…r = r )〉 // por la definición de rango
〈( (x x …) ≡ x★ )〉
〈( ((r1 r1+1 … r2) ≡ (r1…r2 ← r1<r2)) )〉
〈( ((r1 r1−1 … r2) ≡ (r1…r2 ← r1>r2)) )〉
(1+… = ∞)
〈( ( r1…r2 )# = r2−r1+1 ) ← r1<r2 →' r1−r2+1 )〉
〈( ( r… )# = ∞ )〉
〈( ( …r )# = ∞ )〉
〈( (r1 r2 …)# = ∞ )〉
〈( r1_r2 ≡ r2_r1 )〉